Spatial databases provide clients with the capability to view their data in two-dimensional map form. Spatial database tables can include columns of “geometry” data that describes a geographic location or feature. Non geometry data is also stored in spatial database tables. For example, a bank may utilize a customer table that stores non geometry data such as names and account information for its customers, as well as geometry data such as the customers' home addresses. Thus, each record in the customer table includes a geometry type attribute (e.g., the address) along with non-geometry type attributes. When bank personnel access the data they can choose to view the data as a map that shows where the customers live. In this map view, each customer residence is labeled with the non-geometric data (e.g., name, account information). The user can navigate through the map view by panning and zooming.
Map views are assembled from multiple adjacent map tiles, with each map tile covering a given area defined by a minimum bounding rectangle (MBR) associated with the map tile. A map tile is generated from a collection of data layers. Each layer is stored in a spatial database table. In each table, there may be a geometry column storing data for a geometry attribute and a few other columns storing other attributes. The geometry column stores a “geometry”, which can be a point, a line, a polygon feature, or a collection of points, lines, and/or polygons. For example, for a “customers” layer, a customers data table may contain records that include a customer's name, bank account information, and the customer's address stored in a geometry column as a point having an (x,y) coordinate. For a “streets” layer, a streets data table may contain records that include a street name, the street's width, the street pavement materials, and the street geometry stored in a geometry column as a collection of (x,y) coordinates. A map tile that renders the customer's data will overlay a customer layer that positions an icon for the customer at location corresponding to the x,y coordinate for the customer's address on top of a street layer that depicts the customer's street.
Note that in the above example, only the customer table contains data that is generated and maintained by the bank. A client wishing to have mapping capabilities may subscribe to a mapping database service that maintains the street data table, as well as other tables that store “public” data for geographic features, commercial establishments, residences, and so on. Examples of these mapping databases include NavTeq and TomTom. When a map tile is generated, layers for tables from the mapping database as well as the client's database are generated and included in the map tile.